Content retrieved over the Internet in response to a user request is usually presented in a primary window of the Internet browser, such as Internet Explorer® developed by Microsoft Corporation of Redmond, Wash. Some Internet content contains embedded instructions written in a script language, which cause opening of a new browser window without an additional user request.
Such a new browser window usually “pops up” in front of the primary window with the requested content, and is often referred to as a “popup” window. Usually, the size of a popup window is smaller than the size of a primary window and the number of interface elements displayed in a popup window is smaller than in a primary window to increase space available for content. For instance, some popup windows display only a window title, and not a menu bar, a toolbar and an address bar. Content displayed in a popup window is often optimized for a fixed size and is presented in a window having non-resizable borders.
A popup window may also be opened in response to a direct user input, such as a click on a link. In this case, the user input does not specify that a new window has to appear. Rather, a content provider causes a new window to open by embedding special instructions associated with a standard user action. A significant number of Web sites prefers to display new content in an additional window without an address bar, instead of replacing content in a primary window.
Popup windows may play a useful role, providing an additional means of delivering content outside of a primary window. Web sites may use popup windows to display advertisements or supplemental content such as navigation hints, subscription offers, input feedback, etc. However, many Internet users consider popup windows to be annoying distractions that decrease quality of their browsing experience. One of the main reasons for this is that popup windows make navigation more difficult: a user must manually close each popup window to avoid the accumulation of irrelevant windows on a desktop. As a result, a user has to spend at least twice as much effort to leave a site with a popup window than a site with no popup windows.
Different methods of an automatic control of popup windows have been developed to make the browsing process more convenient. For example, a script embedded in a main document may be used not only to open a popup window when a main document is loaded but also to close this popup window when the main document is unloaded or when the popup window is covered by another window. However, this approach does not keep a popup window visible while the user browses related documents stored on the same server. For instance, the main page of the news site may show a popup window with an offer to subscribe to premium content. If the user clicks on a content link, reviewing a sample of the premium content, the popup window will be automatically closed, and the user will have to return to the main page to see the subscription offer again. As a result, the site can loose the potential subscribers that do not return to the main page.
Closing a popup window when a main document is unloaded is especially inconvenient when combined with other popular methods of popup control, such as an opening of a popup window only if the same popup window has not already been opened during either the same browser session or within a pre-defined time. In the above example of the news site, the user may not see a subscription offer again if a corresponding popup window appears only once per session. As a result, the majority of web sites do not close their popup windows when unloading a main document, thus giving a user more time for accessing a popup window but making navigation more difficult.
Some Internet browsers, such as Netscape Navigator® developed by Netscape Corporation of Mountain View, Calif., support an automatic closing of a popup window when executing a user request to close a main window with a parent document. In this case, the popup window remains visible while the main window is open, even if the parent document is replaced with some new content. New content may, in turn, cause other popup windows to appear on the screen. If the user does not close each popup window manually, accumulated popup windows may clutter the desktop during navigation in the same main window.
U.S. Pat. No. 6,133,918 describes a solution in which a selection of a window on the desktop causes other windows to slide off the screen, instead of remaining in the background. Hidden windows may be recalled from their icons on the taskbar. However, if multiple popup windows appear during the same browsing session, their icons will clutter the taskbar even if the windows themselves are hidden, making the selection of useful items more difficult.
Some users are tolerant to the display of advertisements in popup windows, if such popup windows can be easily closed. Other users prefer popup advertisements not to be displayed at all, even if specified by the content provider. For instance, majority of the users do not want to see popup windows opened when main documents are unloaded (a technique used by some content providers that deliberately makes a content change more difficult).
To prevent unsolicited popup windows from appearing, users may install special applications known as popup blockers. For instance, a Pop-Up Stopper® Pro application, developed by Panicware Inc. of Seattle, Wash., enables a user to prevent all popup windows from opening. However, blocking all popup windows may significantly degrade the user experience on the sites that use popup windows to provide relevant content, references or input feedback. To mitigate this problem, Pop-Up Stopper® Pro and other similar applications allow users to specify a list of sites allowed to open popup windows, and reject popup windows initiated by a site that is not included in the list. A problem with such a “white list” implementation is that, unless a popup window is displayed, a user may not know whether it is useful enough to request its display in the future.
To give a user an option to see relevant popup windows, an alternative approach is provided, in which a user is presented with all popup windows except those that are contained in a “black list” or contain proscribed words in their content or title. In this case, the user is constantly required to teach an application which popup windows must be rejected. Stored black lists rapidly become obsolete with changes of domains and headers used by advertisers. In addition, rejecting a popup window based on its title or content may not provide a workable solution because a popup window has to be loaded on the user computer before its title or content becomes known. As a result, this approach decreases a useful bandwidth and may also present a security risk if popup content was retrieved as a result of redirection to an unknown server. In at least one known case, content retrieved after such redirection contained embedded instructions that placed unauthorized executable modules on users' computers, creating “back doors” to monitor user activities.